"""一个文件本标签组件"""
import pygame,sys

import game_utils
#相对导入 对于相对导入的根据主执行文件的路径相对的 
# 比如 game_utils 应该是在上层目录 可能会觉得 from .. import game_utils 但是这样导入就会出错 
#因为对于执行文件的 .. 是上一层目录 但是执行文件所在目录已经是顶层了 报错 ValueError: attempted relative import beyond top-level package


class Label():
    def __init__(self,text,color:str,bcolor:str,font_size:int=48):
        '''
        标签类 
        text: 标签文本
        color: 标签颜色
        bcolor: 背景颜色
        '''
        self.text = text
        self.text_color = game_utils.color_to_rgb(color)
        if bcolor:
            self.bg_color = game_utils.color_to_rgb(bcolor)
        else:
            self.bg_color = None
        self.font_size = font_size
        self.font = pygame.font.SysFont('simhei',self.font_size) #要想显示中文 字体必须设置好
        #fonts=pygame.font.get_fonts() #获取系统所有字体
        #print(pygame.font.get_default_font()) #获取默认字体

        self.render(self.text)

    def render(self,text:str):                
        self.image = self.font.render(text,True,self.text_color,self.bg_color)
        self.rect = self.image.get_rect()

    def draw(self,screen):
        screen.blit(self.image,self.rect)